Hier werden ausführlichere deutsche Erklärungen zu den Systemfehlern 1 bis 27 gegeben. Als Quelle diente ein Artikel in der Ausgabe 2/95 der Zeitschrift MacWelt.
Fehler 1 (dsBusError)
Fehler 1 nennt der Prozessorbauer Motorola einen Bus-Fehler und meint damit speziell Fehler auf dem Adreßbus, also jenen Leitungen, über welche die Speicherstellen angesprochen werden. Nur allein durch Software entsteht der Fehler nicht. Die Bus-Fehlersteuerung wird von verschiedenen Quellen angesteuert. Der Ausgang der Schaltung ist mit dem BERR-Eingang (dem Bus-Error oder Busfehler) der CPU verbunden. Das heißt, daß verschiedene Quellen dieselbe Fehlermeldung auslösen. Beim Mac sind das die Signale der Speicherwerwaltungshardware, die sich meldet, wenn versucht wird, auf gar nicht vorhandene Speicherstellen zuzugreifen. Die Ursache kann im Programm oder in unsauber programmierten Inits liegen. Wenn Sie Pech haben, wenn der Fehler also immer auftritt und die im folgenden genannten Maßnahmen nicht helfeen, kann auch Hardware die Ursache sein. Meistens sind es dann Speicherbausteine oder die MMU (Memory Management Unit oder Speicherverwaltung), da deren Fehlerausgang (Fault) mit der Bus-Fehlersteuerung verbunden ist.
Maßnahme
Doch die Hardware ist selten das Problem, zu 99 % ist es die Software und deren Konflikte mit irgendwelchen Inits. Deshalb solltes Sie als erstes den Rechner ohne alle Inits starten. Dazu müssen Sie nur nach dem Neustart die Shift-Taste gedrückt halten. Der Mac wird daraufhin in der Willkommen-Box zusätzlich den Text “Systemerweiterungen deaktiviert” anzeigen. Diese Maßnadme ist auch bei den anderen Fehlermeldungen hilfreich. Sollte sie helfen, bewegen Sie alle verdächtigen Inits (alle, die nicht von Apple stammen) aus den Ordnern “Kontrollfelder” und “Systemerweiterungen” (beide sind im Systemordner zu finden) in einen anderen Ordner. Danach starten Sie den Mac neu, der Fehler sollte verschwunden sein. Jetzt bewegen Sie ein Init nach dem nächsten auf den Systemordner und starten jedesmal den Mac neu. Sobald der Fehler wieder auftritt, haben Sie das Init erwischt, das den Schaden verursacht. Daß Sie so ein Schrottprogramm nie wieder nutzen, ist klar. Manche Init-Macken sind viel schwieriger zu finden. Solche Programme verändern das Betriebssystem, und das bleibt auch dann noch angeschlagen, wenn das Init längst gelöscht worden ist. Jetzt einfach das Betriebssystem aktualisieren reicht nicht, denn der Aktualisierer schaut nur nach dem Datum. Um eine wirkliche Neuinstallation zu erzwingen, müssen Sie den Systemordner umbenennen und zusätzlich den Finder in einen anderen Ordner verschieben.
Fehler 2 (dsAddressError)
Diese Meldung signalisiert einen Adreßfehler. Hier hat vermutlich ein Programmierer nicht einwandfrei gearbeitet. Der 68K-Prozessor unterscheidet zwischen Byte-, Wort- und Langwortadressierung. Ein Byte kann ein Zeichen aufnehmen, ein Wort besteht aus zwei und ein Langwort aus vier Bytes. Das Problem: Bei Wort- und Langwortzugriffen sind nur gerade Adressen erlaubt. Adressen werden aber häufig berechnet, etwa beim Zugriff auf Tabellen, und die Adreßrechnung kann fehlerhaft sein. Eine weitere traurige Nachricht: Ein Fehler kann auch durch Störimpulse ausgelöst werden oder - wahrscheinlicher - durch fehlerhafte RAM-Bausteine. Nun könnten wir noch raten zu prüfen, ob das Programm “32-Bit-sauber” ist, doch leider läßt sich die 32-Bit-Adressierung bei den neueren Macs nicht mehr ausschalten. Schon deshalb gilt: Jedes Programm, das ständig Fehler produziert, sollte man reklamieren und durch eine korrigierte Version ersetzen.
Maßnahme
Gegen eine falsche Adreßrechnung läßt sich nichts machen, es sei denn, Sie selbst sind der Programmautor. Doch in manchen Fällen verursacht die virtuelle Speicherverwaltung den Fehler. Dann ist es der Festplattentreiber, der nicht funktioniert. Wenn das Ausschalten des virtuellen Speichers (im Kontrollfeld “Speicher”) Erfolg hat, dann wenden Sie sich an Ihren Händler oder direkt an den Hersteller Ihrer Festplatte und versuchen Sie es mit einem neuen Treiber. Wenn Sie Besitzer eines Rechners mit 68040-CPU sind, können Ihnen auch ältere Programme einen Streich spielen. Dafür gibt es das Kontrollfeld “Cache-Umschalter”. Schalten Sie den Cache (eine Art schneller Zwischenspeicher) aus. Wenn es hilft, sollten Sie sich eine neuere Programmversion besorgen, denn der “Cache-lose” Zustand bremst das Tempo.
Fehler 3 (dsIllInstErr)
Er steht für einen illegalen Befehl, sprich, eine Bitkombination, welche die CPU nicht kennt. Hier sind die Programmierer fast unschuldig, denn kein Compiler erzeugt diese Befehle. Ein Festplattentreiber kann aber auch hierbei mitmischen, und wiederum können Störimpulse oder fehlerhafte RAM-Bausteine die Ursache sein.
Fehler 4 (dsZeroDivErr)
Mit diesem Fehler, der den Versuch des Prozessors anzeigt, während eines Programmablaufs eine Zahl durch Null zu dividieren, ist alles sehr eindeutig. Hier hat ein Programmierier dicken Mist gebaut, treten Sie ihm dafür auf die Füße.
Fehler 5 (dsCheckErr)
Es gibt einen CPU-Befehl namens CHK. Mit dessen Hilfe kann man feststellen, ob sich eine Adresse noch innerhalb einer Tabelle befindet. Ist das nicht der Fall, wird der Fehler 5 ausgelöst. Die Fehlermöglichkeit ist relativ gering, weil man dafür erstens in Assembler (in Maschinensprache) programmieren muß und zweitens die meisten Programmierer den Befehl nicht nutzen.
Fehler 6 (dsOvFlowErr)
Dies ist ein CPU-Befehl namens TRAPV. Mit diesem kann man bei einer Rechenoperation einen Überlauf feststellen. In diesem Fall wird der Fehler 6 ausgelöst. Die meisten Mac-Programmierer ziehen deshalb den weniger radikalen BVS (branch on overflow set) vor, um einen solchen Fehler in ihrem Programm abfangen zu können. Der Fehler wird aber auch ausgelöst, wenn ein Programm einfach unterstellt, daß ein mathematischer Koprozessor (FPU) vorhanden ist, statt den offiziellen Weg über die Fließkommabibliothek zu gehen.
Fehler 7 (dsPrivErr)
Dieser Fehler zeigt eine Privilegienverletzung an. Dazu müssen Sie wissen, daß die 68K-CPU zwei Modi kennt, den Nutzer und den Aufseher-Modus. Einige Befehle sind nur im Aufseher-Modus erlaubt, ein konventionelles Programm arbeitet jedoch immer im Nutzer-Modus. Bei der Fehlermeldung 7 liegt ein Programmierfehler vor, den Sie nur durch Austausch des Programms beheben können.
Fehler 8 (dsTraceErr)
Dier Ausnahmevektor 9, um den es sich hier handelt, ist sozusagen der in die CPU eingebaute Debugger (ein Programm zur Fehlersuche). Der Fehler 8 dürfte in der Praxis nicht auftreten, es sei denn, ein Programmierer manipuliert wild in Maschinensprache das Statusregister der CPU.
Fehler 9 (dsLineAErr)
Der Mac arbeitet ständig mit dem Vektor 10, denn hierüber ruft er die ROM-Routinen der Toolbox auf. Tritt der Fehler 9 auf, haben Sie ein echtes Problem. Es gelingt nicht, das ROM anzusprechen, meistens ein deutliches Zeichen für ein Hardwareproblem.
Fehler 10 (dsLineFErr)
Er bedeutet, daß der mathematische Koprozessor fehlt. Der Fehler wird ausgelöst, wenn ein Programm einfach unterstellt, daß ein Koprozessor eingebaut ist, ohne den offiziellen Weg über die Fließkommabibliothek zu gehen. Aber immerhin wird diese Meldung meistens im Klartext verkündet. Erscheint sie häufiger, sollten Sie die Anschaffung eines Koprozessors in Erwägung ziehen.
[Anmerkung: Als Notlösung kann in vielen Fällen das Kontrollfeld “Software FPU” verwendet werden, das dem Computer softwaremäßig eine FPU vorgaukelt.]
Fehler 11 -14
Diese Fehler sind leider sehr unangenehm, denn siestehen für unterschiedliche Hardware-Fehler. Hier sollten Sie Ihren Mac-Händler aufsuchen.
Fehler 15 - 27
Diese Fehlermeldungen deuten meist auf ein lösbares Problem hin. Den Fehler 15 können Sie wahrscheinlich selbst beheben, jedenfalls dann, wenn das Programm schon einmal einwandfrei gearbeitet hat. Er zeigt an, daß der Mac ein Programmsegment nicht laden konnte. Das kann an einer beschädigten Programmdatei oder an einem völlig fragmentierten Hauptspeicher liegen. Hier hilft in der Regel ein Neustart weiter. Beim Fehler 16 liegt ein Fließkommafehler vor, hier könnte das Programm den Koprozessor überfordert haben. Die Fehler 17 bis 24 zeigen an, daß eine Package-Ressource (eine Art Systemhilfsprogramm) nicht geladen werden konnte. Sofern hier ein Neustart nicht hilft, müssen Sie das System neu installieren. Dafür ist der Fehler 25 wieder sehr trivial, er heißt “out of memory”. Dies bedeutet aber nicht, daß Sie jetzt sofort den Umsatz der Chip-Industrie ankurbeln müssen. Schließen Sie zuerst noch offene Anwendungen, und - wenn das nicht hilft - starten Sie das Programm allein für sich nach einem Neustart. Reicht das immer noch nicht, können Sie den virtuellen Speicher einschalten oder auch vergrößern. Diese Maßnahmen können auch gegen Fehler 26 (“Kann das Programm nicht starten”) helfen. Doch hier müssen Sie auch damit rechnen, daß die Programmdatei beschädigt ist. Der Fehler 27 deutet Schwierigkeiten mit dem Dateisystem an, also mit der internen Struktur der Festplatte. Hier kann das Programm “Diskette reparieren” helfen. Auch mittels der Utilities von Norton (Symantec) oder MacTools von CPC (neuerdings auch Symantec) können Sie das Problem lösen.